Modern complex computing systems typically involve large numbers of computing devices, with large numbers of processors that are executing large numbers of computer programs. Measuring the performance of such a computing system is important to ensure that response time and availability rate are within specified parameters. For instance, a user should not have to wait more than a predetermined length of time after issuing a request to the computing system, and, at any given time, a predetermined percentage of processors or servers should be available for processing such requests.
Existing approaches to measuring the performance of computing systems can indicate which processors of which computing devices are currently experiencing high usage. However, such performance measurement often begs the question as to why this high usage is occurring. That is, in order to effectively respond to the indication that a given processor of a given computing device is experiencing high usage, it can be important to know what computer program—and indeed what code section of which computer program—is causing such high usage.
This and other shortcomings of the prior art are addressed by the present invention.